Pileup correction method for a photon-counting detector

ABSTRACT

A method and apparatus for determining a parameter vector that includes a plurality of parameters of a detector pileup model of a photon-counting detector, the detector pileup model being used for pileup correction for a spectral computed-tomography scanner. The method includes setting values of the parameters, the parameters including a dead time parameter and individual probabilities of different pileup events, the probabilities including a probability of single photon events, a probability of double quasi-coincident photon events, and a probability of at least three quasi-coincident photon events. The method include determining, using (1) a detector response model, (2) an incident spectrum, and (3) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events, and summing the plurality of component spectra to generate an output spectrum.

FIELD

Embodiments disclosed herein generally relate to pile-up correction for photon-counting detectors in a spectral computed tomography (CT) system.

BACKGROUND

Radiographic imaging, in its simplest expression, is an X-ray beam traversing an object and a detector relating the overall attenuation per ray. The attenuation is derived from a comparison of the same ray with and without the presence of the object. From this conceptual definition, several steps are required to properly construct an image. For instance, the finite size of the X-ray generator, the nature and shape of the filter blocking the very low energy X-ray from the generator, the details of the geometry and characteristics of the detector, and the capacity of the acquisition system are all elements that affect how the actual reconstruction is performed. In the reconstruction, the map of the linear attenuation coefficient (LAC) of the imaged subjects is obtained from the line integrals of the LAC through an inverse Radon transform. The line integrals can be related to the logarithm of the primary intensity of the X-rays passing through the subject. However, the measured X-ray intensity on the detector may include both scattering photons and primary photons. Thus, the images reconstructed from scattering, contaminated intensities may contain some scattering artifacts.

A third-generation CT system can include sparsely distributed fourth-generation, photon-counting detectors. In such a combined system, the fourth-generation detectors collect primary beams through a range of detector fan angles.

Many clinical applications can benefit from spectral CT technology, which can provide improvement in material differentiation and beam hardening correction. Further, semiconductor-based photon-counting detectors are a promising candidate for spectral CT, which is capable of providing better spectral information compared with conventional spectral CT technology (e.g., dual-source, kVp-switching, etc.).

Due to the dead time (˜100 ns), which is determined by the type of semiconductor (e.g. CZT or Cd Te), its thickness and readout circuit, pulse pileup at high X-ray flux (˜10⁸ cps/mm²) can be very severe, and the measured spectral signals can be distorted. The distorted spectral signal can cause artifacts in the reconstruction images. Furthermore, the dead time is not a constant for a given readout circuit due to the location of the pulse formation within the detector cell. However, if the pileup effect can be corrected in the detector model, the image quality can be improved.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:

FIG. 1 illustrates an apparatus for determining a detector pileup model for a photon-counting detector;

FIG. 2 illustrates a method for determining an output of a detector pileup model for a photon-counting detector;

FIG. 3 illustrates a method performed by a pileup model parameter estimation device;

FIGS. 4 and 5 illustrate simulated component spectra using a detector pileup model; and

FIGS. 6 and 7 illustrate a CT scanner system according to the present embodiments.

DETAILED DESCRIPTION

Embodiments described herein are directed to a new system and method for pileup modeling and correction for fourth-generation spectral, photon-counting CT detectors.

According to one embodiment, there is provided a method for determining a parameter vector that includes a plurality of parameters of a detector pileup model of a photon-counting detector, the detector pileup model being used for pileup correction for a spectral computed-tomography scanner, the method comprising: (1) setting values of the plurality of parameters, the parameters including a dead time parameter and individual probabilities of different pileup events, the probabilities including a probability of single photon events, a probability of double quasi-coincident photon events, and a probability of at least three quasi-coincident photon events; (2) determining, using (a) a detector response model, (b) an incident spectrum, and (c) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events; (3) summing the plurality of component spectra to generate an output spectrum; (4) calculating, based on the output spectrum and a measured spectrum, a value of a cost function; (5) updating at least one of the values of the parameter vector; and (6) repeating the determining, summing, calculating, and updating steps until a stopping criteria is met, so as to determine a parameter vector that optimizes the cost function.

In one embodiment, the setting step comprises setting the dead time parameter based on the scanner geometry.

In another embodiment the calculating step comprises calculating the value of the cost function using: ψ²( a )=∫dE[S _(out)(E,a )−S _(m)(E)]² wherein ψ(a) is the cost function, a is the parameter vector, S_(out)(E;a) is the output spectrum, Sm(E) is the measured spectrum, and E is energy.

In another embodiment, the parameters further include a time threshold to distinguish between peak pileup events and tail pileup events, and the determining step comprises determining, for the double quasi-coincident photon events, a peak pileup component spectrum and a tail pileup component spectrum.

In another embodiment, the repeating step comprises repeating the determining, summing, calculating, and updating steps until the cost function falls below a predetermined threshold or for a predetermined number of iterations.

In another embodiment, the updating step comprises updating the parameter vector a according to an exhaustive search method.

In another embodiment, the updating step comprises updating the parameter vector a according to a nonlinear least-squares method.

In another embodiment, the determining step comprises determining, as one of the plurality of component spectra, a first component spectrum for single photon events, the first component spectrum being determined as: S ₀(E)=e ^(−nτ) ^(d) ∫∫dz ₀ dE ₀χ₀ S _(in)(E ₀)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ μ_(CZT)(E ₀) where S_(in) is the incident spectrum, n is an incident count rate, μ_(CZT)(E) is a linear attenuation value, z is depth, and τ_(d) is the dead time parameter.

In another embodiment, there is provided a method of performing pileup correction for a spectral computed-tomography scanner, the scanner including a photon-counting detector, the method comprising (1) determining, using the method described above, a parameter vector that includes a plurality of parameters of a detector pileup model of the photon-counting detector; (2) performing a scan using the scanner to generate a measured spectrum for the photon-counting detector; and (3) determining, using the detector pileup model and the measured spectrum, an incident spectrum for the photon-counting detector.

In another embodiment, there is provided a device for determining a parameter vector that includes a plurality of parameters of a detector pileup model of a photon-counting detector, the detector pileup model being used for pileup correction for a spectral computed-tomography scanner, the device comprising a processor configured to (1) set values of the plurality of parameters, the parameters including a dead time parameter and individual probabilities of different pileup events, the probabilities including a probability of single photon events, a probability of double quasi-coincident photon events, and a probability of at least three quasi-coincident photon events; (2) determine, using (a) a detector response model, (b) an incident spectrum, and (c) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events; (3) sum the plurality of component spectra to generate an output spectrum; (4) calculate, based on the output spectrum and a measured spectrum, a value of a cost function; (5) update at least one of the values of the parameter vector; and (6) repeat the determining, summing, calculating, and updating steps until a stopping criteria is met, so as to determine a parameter vector that optimizes the cost function.

In another embodiment, there is provided a method for determining an output spectrum from a parameter vector that includes a plurality of parameters of a detector pileup model of a photon-counting detector, the detector pileup model being used for pileup correction for a spectral computed-tomography scanner, the method comprising: (1) setting values of the plurality of parameters, the parameters including a dead time parameter and individual probabilities of different pileup events, the probabilities including a probability of single photon events and a probability of double quasi-coincident photon events; (2) determining, using (a) a detector response model, (b) an incident spectrum, and (c) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events, wherein the determining step includes determining, as one of the plurality of component spectra, a first component spectrum for single photon events, the first component spectrum being determined as: S ₀(E)=e ^(−nτ) ^(d) ∫∫dz ₀ dE ₀χ₀ S _(in)(E ₀)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ μ_(CZT)(E ₀) where S₀(E) is determined from the detected energy, E, which is defined as E=ν _(p)(t _(TOF) ⁰ :z ₀ ,E ₀), S_(in) is the incident spectrum, E₀ is the incident energy, z₀ is an interaction point, n is an incident count rate, μ_(CZT)(E) is a linear attenuation value, τ_(d) is the dead time parameter, ν_(p) is an output voltage of a pre-amplifier; and χ₀ is a probability of single photon events; and (3) summing the plurality of component spectra to generate the output spectrum.

Turning now to the drawings, FIG. 1 illustrates an apparatus for determining a detector pileup model for each photon-counting detector in a spectral CT scanner. In particular, FIG. 1 illustrates a detector pileup model 10 that receives an incident spectrum S_(in)(E), a count rate, and a parameter vector a. Based on the received values, the detector pileup model 10 generates a simulated measured spectrum S_(out)(E; a). The process of determining the simulated measured spectrum S_(out)(E; a) will be described in more detail below.

As shown in FIG. 1, the model parameter estimation device 20 compares the simulated measured spectrum S_(out)(E; a) with an actual measured spectrum S_(m)(E), and updates the parameter vector a so as to minimize a predetermined cost function. The updated parameter vector a is fed back to the detector pileup model 10 to generate a new simulated measured spectrum S_(out)(E; a). This process continues for a predetermined number of iterations or until the change in the parameter vector a falls below a predetermined threshold. As described below, the model parameter estimation device 20 can employ, e.g., an exhaustive search within a predefined range for the parameter vector a, or a nonlinear least-squares method for finding the optimal parameter vector a. A respective optimal parameter a is found for each photon-counting detector (PCD) in a scanner.

The incident spectrum S_(in)(E) can be determined by calculation (all vendors have models to calculate the output from their tubes) or measurements (by using a gold-standard spectroscopic detector, e.g., a high-purity germanium spectrometer) for each PCD in a scanner. The measured spectrum S_(m)(E) is the output spectrum from each PCD corresponding to each incident spectrum S_(in)(E).

The parameter vector a includes a dead time value τ_(d), a time threshold T to determine whether, e.g., double photon events are peak pileup events or tail pileup events (although threshold this applies to determining whether a peak or tail pileup event occurs at any pileup order), and individual probabilities of different number of quasi-coincident photons χ₀, χ₁ ^(p), χ₁ ^(t), χ₂ ^(p), χ₂ ^(t), etc. For example, χ₀ is the probability of single photon events, χ₁ ^(p) is the probability of peak double pileup events, χ₁ ^(t) is the probability of tail double pileup events, χ₂ ^(p) is the probability of triple peak pileup events, etc. Note that, in practice, the contribution of higher order spectra drops quickly with increasing order and, in most embodiments, those spectra can be ignored in calculating the summed spectrum. Note that the sum of individual probabilities will be equal to or less than 1.

The detector pileup model 10 computes S_(out)(E; a) from S_(in)(E) and the parameter a using the method illustrated in FIG. 2.

In particular, in step 200, the parameter vector a and the incident spectrum S_(in)(E) are received or set.

In step 210, a first component spectrum S₀(E) is calculated using S_(in)(E) and the parameter vector a. A Poisson distribution is assumed for the single photon events and the effects of pixel weighting potential, depth of interaction, ballistic deficit, and space charge are included in the calculation of S₁(E). Note that the use of the Poisson distribution is reflected in the terms e^(−nτ) ^(d) , ne^(−nτ) ^(d) , ½n^(z)e^(−nτ) ^(d) , etc. of the component spectra equations (S0, S1, S2, etc.) shown below.

In particular, the weighting potential is defined as follows:

${{w(z)} = {\frac{z}{L} - \frac{\alpha\;\sin\;\pi\; z}{L}}},{0 \leq z \leq L}$ $z = \left\{ \begin{matrix} {z_{0},{t < 0}} \\ {{{v_{\theta}t} + z_{0}},{{0 \leq t \leq t_{TOF}} = \frac{L - z_{0}}{v_{\theta}}}} \\ {L,{t > t_{TOF}}} \end{matrix} \right.$ where z indicates the distance between a point in CZT and the cathode, z₀ is the point where an X-ray photon converts to electron-hole pairs, t_(TOF) is the time for the generated electrons to drift from the interaction point z₀ to the anode of the detector. Also, α is a model parameter describing the weighting potential distribution of the detector, L is the detector thickness, and ν_(e) is the drifting velocity of the electron carriers in the photon-counting detector.

For ballistic deficit, the basic equations are:

${{\tau_{p}\frac{\mathbb{d}{v_{p}(t)}}{\mathbb{d}t}} + {v_{p}(t)}} = {\tau_{p}\frac{\mathbb{d}{v_{in}(t)}}{\mathbb{d}t}}$ v_(in)(t) = KE[w(z(t)) − w(z₀)] where E is the incident energy, and K is the front-end gain (a constant for a given readout configuration), τ_(p) is the time constant of the pre-amplifier, and ν_(p)(t) is the output voltage of the pre-amplifier.

For 0≦t≦t_(TOF) from the basic equations, the pre-amplifier output can be written as:

${v_{p}(t)} = {{\mathbb{e}}^{- \frac{t}{\tau_{p}}}\left\lbrack {{\int{{\mathbb{d}{tKE}}\frac{\mathbb{d}{z(t)}}{\mathbb{d}t}\frac{\mathbb{d}{w(z)}}{\mathbb{d}z}{\mathbb{e}}^{\frac{t}{\tau_{p}}}}} + v^{0}} \right\rbrack}$ where ν⁰ is determined by the initial condition, ν_(p)(0)=0. Inserting the weighting potential equations into above equation, we have,

${v_{p}(t)} = {{{\mathbb{e}}^{- \frac{t}{\tau_{p}}}\left\lbrack {{\int{{\mathbb{d}{{tKEv}_{\theta}\left( \frac{\frac{1}{L} - {\alpha\frac{\pi}{L}{\cos\left( {\pi\left( {{v_{\theta}t} + z_{0}} \right)} \right)}}}{L} \right)}}{\mathbb{e}}^{\frac{t}{\tau_{p}}}}} + v^{0}} \right\rbrack}.}$ Calculating the integration, we have

${v_{p}(t)} = {{\mathbb{e}}^{- \frac{t}{\tau_{p}}}{\quad{\left\lbrack {{{{KEv}_{\theta}\left( {\frac{\tau_{p}}{L} - {\alpha\frac{\pi}{L}\frac{\frac{\frac{\frac{1}{\tau_{p}}\cos\left( {\pi\left( {{v_{\theta}t} + z_{0}} \right)} \right)}{L} + {\frac{\pi\; v_{\theta}}{L}{\sin\left( {\pi\left( {{v_{\theta}t} + z_{O}} \right)} \right)}}}{L}}{\left( \frac{\pi\; v_{\theta}}{L} \right)^{2} + \left( \frac{1}{\tau_{p}} \right)^{2}}}} \right)}{\mathbb{e}}^{\frac{t}{\tau_{p}}}} + v^{0}} \right\rbrack.}}}$ Applying the initial condition, the constant ν⁰ can be expressed as,

$v^{0} = {{- \frac{{KE}\;\tau_{p}}{\tau_{TOF}}}{\left( {1 - \frac{{\alpha\pi}\left( \frac{\frac{\cos\left( {\pi\; z_{O}} \right)}{L} + {\frac{{\pi\tau}_{p}}{\tau_{TOF}}{\sin\left( {\pi\; z_{0}} \right)}}}{L} \right)}{\left( \frac{{\pi\tau}_{p}}{\tau_{TOF}} \right)^{2} + 1}} \right).{where}}}$ $\tau_{TOF} = {{\frac{L}{v_{\theta}}.v^{0}} = {{- \frac{{KE}\;\tau_{p}}{\tau_{TOF}}}\left( {1 - \frac{{\alpha\pi}\left( \frac{\frac{\cos\left( {\pi\; z_{O}} \right)}{L} + {\frac{{\pi\tau}_{p}}{\tau_{TOF}}{\sin\left( {\pi\; z_{0}} \right)}}}{L} \right)}{\left( \frac{{\pi\tau}_{p}}{\tau_{TOF}} \right)^{2} + 1}} \right)}}$ At

${t_{TOF} = \frac{L - z_{0}}{v_{\theta}}},$ the generated electron will reach the anode of the detector. Accordingly, the pre-amplifier output reaches the maximum,

${v_{p}\left( t_{TOF} \right)} = {{{\frac{{KE}\;\tau_{p}}{\tau_{TOF}}\left( {1 - \frac{\alpha\pi}{\left( \frac{{\pi\tau}_{p}}{\tau_{TOF}} \right)^{2} + 1}} \right)} + {v^{0}{{\mathbb{e}}^{- \frac{t_{TOF}}{\tau_{p}}}.t_{TOF}}}} = \frac{L - z_{0}}{v_{\theta}}}$ Note that t_(TOF) will be different if space charge becomes non-negligible.

For the case t>t_(TOF) after t_(TOF) the signal collection is complete and the output amplitude decays exponentially with the front-end circuitry time constant, τ_(p).

${v_{p}(t)} = {{v_{p}\left( t_{TOF} \right)}{\mathbb{e}}^{- \frac{t - t_{TOF}}{\tau_{p}}}}$

As illustrated above, the formulation of ν_(p)(t) depends on depth of interaction, z₀ and the incident energy, E₀. Therefore, we will denote it as ν_(p)(t)=ν_(p)(t:z₀,E₀). Below, for ease of representation, we may omit E₀ in ν_(p)(t). Below, we also use {t_(TOF) ^(j):z_(j)} to define the time-of flight and depth-of-interaction of event j, respectively.

For the no pileup case, the first component spectrum is calculated as follows. First, the detected energy, E, is defined as E=ν _(p)(t _(TOF) ⁰ :z ₀ ,E ₀). Next, the component spectrum becomes: S ₀(E)=e ^(−nτ) ^(d) ∫∫dz ₀ dE ₀χ₀ S _(in)(E ₀)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ μ_(CZT)(E ₀) where the integration runs over the whole volume with the energy condition. Note that detection probability χ₀˜1 if the flexible dead time close to true dead time. In the above equation, n is the incident count rate and μ_(CZT)(E) is the linear attenuation of CZT at energy E.

In step 220, a second component spectrum S₁(E) for double photon events including peak pileup events and tail pileup events is calculated using S_(in)(E) and the parameter vector a. For double photon events, a peak pileup event is determined to have occurred when the time interval between events is smaller than a threshold T, and a tail pileup event is determined to have occurred when the time interval is larger than the threshold T. The threshold T is included in the model parameter vector a.

In particular, for peak pileup events, the energy is defined as:

$E = {{{v_{p}\left( {t_{TOF}^{0};z_{0}} \right)}{\mathbb{e}}^{- \frac{t_{\max} - t_{TOF}^{0}}{\tau_{p}}}} + {{v_{p}\left( {t_{TOF}^{1};z_{1}} \right)}\left. {\mathbb{e}}^{- \frac{t_{\max} - t_{TOF}^{1} - t_{1}}{\tau_{p}}}〚{{t_{\max} = {{\max\left( t〛 \right.}_{1} + t_{TOF}^{1}}},t_{TOF}^{0}} \right)}}$

Then the peak component spectrum becomes: S ₁ ^(p)(E)=ne ^(−nτ) ^(d) ∫∫∫∫∫dz ₀ dE ₀ dt ₁ dz ₁ dE ₁χ₁ ^(p) S _(in)(E ₀)S _(in)(E ₁)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ ^(−μ) ^(CZT) ^((E) ¹ ^()z) ¹ μ_(CZT)(E ₀)μ_(CZT)(E ₁) Note that detection probability χ₁ ^(p)˜½, if the flexible dead time close to the true dead time.

For tail pileup, the first peak energy is defined as: E ⁰=ν_(p)(t _(TOF) ⁰ :z ₀)+ν_(p)(t _(TOF) ⁰ −t ₁ :z ₁) Then, the component spectrum becomes: S ₁ ^(t0)(E)=ne ^(−nτ) ^(d) ∫∫∫∫∫dz ₀ dE ₀ dt ₁ dz ₁ dE ₁χ₁ ^(t0) S _(in)(E ₀)S _(in)(E ₁)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ ^(−μ) ^(CZT) ^((E) ¹ ^()z) ¹ μ_(CZT)(E ₀)μ_(CZT)(E ₁)

Further, the second peak energy is defined as: E ¹=ν_(p)(t _(TOF) ¹ +t ₁ :z ₀)+ν_(p)(t _(TOF) ¹ :z ₁) Then the component spectrum becomes: S ₁ ^(t1)(E)=ne ^(−nτ) ^(d) ∫∫∫∫∫∫dz ₀ dE ₀ dt ₁ dz ₁ dE ₁χ₁ ^(t1) S _(in)(E ₀)S _(in)(E ₁)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ ^(−μ) ^(CZT) ^((E) ¹ ^()z) ¹ μ_(CZT)(E ₀)μ_(CZT)(E ₁)

Note that detection probability χ₁ ^(t0)˜0,χ₁ ^(t1)˜0 if the flexible dead time is close to the true dead time. The peak and tail pileup component spectrum are added to form S₁(E).

In step 230, a third component spectrum S₂(E) for multiple photon events including peak pileup events and tail pileup events is calculated using S_(in)(E) and the parameter vector a.

In particular, in the triple pileup case, for peak pileup, the energy is defined as:

$E = {{{v_{p}\left( {t_{TOF}^{0};z_{0}} \right)}{\mathbb{e}}^{- \frac{t_{\max} - t_{TOF}^{0}}{\tau_{p}}}} + {{v_{p}\left( {t_{TOF}^{1};z_{1}} \right)}{\mathbb{e}}^{- \frac{t_{\max} - t_{TOF}^{1} - t_{1}}{\tau_{p}}}} + {{v_{p}\left( {t_{TOF}^{2};z_{2}} \right)}{\mathbb{e}}^{- \frac{t_{\max} - t_{TOF}^{2} - t_{2}}{\tau_{p}}}}}$      t_(max) = max (t₂ + t_(TOF)², t₁ + t_(TOF)¹, t_(TOF)⁰) Then, the peak component spectrum becomes: S ₂ ^(p)(E)=½n ² e ^(−nτ) ^(d) ∫∫∫∫∫∫∫∫dz ₀ dE ₀ dt ₁ dz ₁ dE ₁ dt ₂ dz ₂ dE ₂χ₂ ^(p) S _(in)(E ₀)S _(in)(E ₁)S _(in)(E ₂)×e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ ^(−μ) ^(CZT) ^((E) ¹ ^()z) ¹ ^(−μ) ^(CZT) ^((E) ² ^()z) ² μ_(CZT)(E ₀)μ_(CZT)(E ₁)μ_(CZT)(E ₂) Note that detection probability •₂ ^(p)˜⅓ if the flexible dead time close to the true dead time. As an approximation: S ₂ ^(p)(E)≈½n ² e ^(−nτ) ^(d) ∫∫∫dE′dz ₂ dE ₂χ₂ ^(p) S _(norm)(E′)S _(in)(E ₂)e ^(−μ) ^(CZT) ^((E) ² ^()z) ² μ_(CZT)(E ₂) where, S_(norm)(E)=N[S₀(E)+S₁ ^(p)(E)+S₁ ^(t0)(E)+S₁ ^(t1)(E)], where N is a normalization factor.

For the tail pileup case or the mixed tail-peak pileup case, the calculation is similar to that of double pileup, but there are more combinations to consider. For example, for a first combination (0-1-2), the energy is defined as: E ⁰=ν_(p)(t _(TOF) ⁰ :z ₀)+ν_(p)(t _(TOF) ⁰ −t ₁ :z ₁)+ν_(p)(t _(TOF) ⁰ −t ₂ :z ₂) E ¹=ν_(p)(t _(TOF) ¹ +t ₁ :z ₀)+ν_(p)(t _(TOF) ¹ :z ₁)+ν_(p)(t _(TOF) ¹ +t ₁ −t ₂ :z ₂) E ²=ν_(p)(t _(TOF) ² +t ₂ :z ₀)+ν_(p)(t _(TOF) ² +t ₂ −t ₁ :z ₁)+σ_(p)(t _(TOF) ² :z ₂) For a second combination ((01)-2), the energy is defined as: E ⁰¹=ν_(p)(t _(max) :z ₀)+ν_(p)(t _(max) −t ₁ :z ₁)+ν_(p)(t _(max) −t ₂ :z ₂)

t _(max)=max(t

₁ +t _(TOF) ¹ ·t _(TOF) ⁰) E ²=ν_(p)(t _(TOF) ² +t ₂ :z ₀)+ν_(p)(t _(TOF) ² +t ₂ −t ₁ :z ₁)+ν_(p)(t _(TOF) ² :z ₂) Other combinations, such as ((02)-1) and ((12)-0) are similar to the second combination set forth above.

For the tail pileup case or the mixed tail-peak pileup case, the corresponding formula can be obtained readily by generalizing the formula used for double pileup. In one embodiment, an approximation for peak pileup is used and the tail pileup is ignored.

In an alternative embodiment, triple photon events are treated as a double event between (1) a double event (first-order pileup) and a single event (no pileup). In this case, the component spectrum is calculated from a double-event component spectrum and a no-pileup component spectrum. One component spectrum will replace one term S_(in)(E) in the double-event equation S₁(E) shown above, while the other component spectrum will replace the other S_(in)(E) in the same equation. This approach can be extended to higher-order pileup events.

In step 240, the calculated component spectra S_(i)(E), i=0, 1, 2, etc. are summed to generate S_(out)(E; a). FIG. 4 illustrates partial summation of the component spectra described above. In particular, P0 is the single photon event spectrum S₀(E), while P1 is the sum of the first and second component spectra S₀(E)+S₁(E). Finally, P2 is the sum of the first, second, and third component spectra, which in this example, equals S_(out)(E; a).

By comparison, FIG. 5 shows partial summation of the component spectra calculated with constant values for the detection probabilities. Note that with constant detection probabilities the pileup effect is overestimated.

As noted above, the model parameter estimation device 20 shown in FIG. 1 compares the simulated measured spectrum S_(out)(E; a) with an actual measured spectrum S_(m)(E), and updates the parameter vector a so as to minimize a predetermined cost function. The method used to find the optimal parameter values a is shown in FIG. 3.

In particular, in step 300, suitable ranges for each of the parameters in the parameter vector a are defined and a cost function ψ(a) is defined, e.g., as: ψ²( a )=∫dE[S _(out)(E;a )−S _(m)(E)]² Other suitable cost functions can be used.

In step 310, the value of the cost function is calculated based on received values of S_(out)(E; a) and the measured spectrum S_(m)(E). Further, the calculated value of the cost function ψ(a) is stored in association with the current parameter vector a.

In step 320, the stopping criteria are checked. For example, a change in the parameter vector a is determined and if the change in the parameter vector a falls below a predetermined threshold, the process ends. Otherwise, the process continues to step 330. Alternatively, the process can end when the number of iterations exceeds a predetermined number. Other combinations of stopping criteria can be used, such as stopping when the number of iterations exceeds a predetermined number or the change in the parameter vector a falls below a predetermined threshold.

In step 330, depending on the particular optimization method used, the parameter vector a is updated. For example, if an exhaustive search algorithm is being used, the vector a is updated in a predetermined systematic manner within the range defined for each parameter. Alternatively, a nonlinear least-squares fitting method, such as Levenberg-Marquardt, can be used. In that method, gradients of the cost function are estimated. Other optimization methods can be used to minimize the cost function.

In step 340, the updated parameter vector a is fed back to the detector pileup model 10, which calculates a new S_(out)(E; a) using the updated parameter vector a. The process then proceeds to step 310, in which the new S_(out)(E; a) values are received, and the cost function is computed again using the same measured spectrum S_(m)(E).

In an alternative embodiment, one or more of the parameter values a, such as the dead time τ_(d), can be derived directly from the detector geometry and the readout electronics configuration. Further, in another embodiment, a combination of the direct calculation approach and the empirical method described above with respect to FIGS. 1-3 is performed. For example, some of the parameter values a can be directly calculated and the remaining values can be determined empirically. Alternatively, initial estimates of the parameter values a can be calculated directly and used as the initial values in the empirical method described above, which reduces the computational load.

Once the optimal parameters of the detector pileup model are determined, as discussed above, various algorithms can be used for spectrum correction using the model, i.e., solving for the incident spectrum based on a measured spectrum. Examples include (1) gradient-based methods to minimize a cost function, (2) search-based methods to find the incident spectrum in a pre-determined search domain so as to minimize a cost function, and (3) response-function-based iterative methods.

In the response-function-based approach, the detector pileup model is defined or modeled as follows, for the linear case without pileup: S _(out)(E)≈∫dE′R(E,E′)S _(in)(E′) where R(E,E′) is the response matrix of the detector model and incorporates the determined model parameters a. From the component spectrum formula for no pileup, the response matrix can be defined as, R(E,E ₀)=e ^(−nτ) ^(d) ∫dz ₀χ₀ e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ μ_(CZT)(E ₀) The incident spectrum S_(in)(E) is then obtained by solving the following equation iteratively:

${S_{in}(E)} = \frac{{S_{m}(E)} - {\sum\limits_{E^{\prime} = {E + 1}}^{E_{mas}}{{R\left( {E,E^{\prime}} \right)}{S_{in}\left( E^{\prime} \right)}}}}{R\left( {E,E} \right)}$

For the non-linear case with pileup, the detector model is defined as: S _(out)(E)≈∫dE′R(E,E′)S _(in)(E′)+∫∫dE′dE″R ₂(E,E′,E″)S _(in)(E′)S _(in)(E″)+ . . . Where R₂(E,E′,E″) is the double photon response matrix of the detector model and is determined using the model parameters a. From the component spectrum formula for double peak pileup, the response matrix can be defined as, R ₂ ^(p)(E,E ₀ ,E ₁)=ne ^(−τ) ^(d) ∫∫∫dz ₀ dt ₁ dz ₁χ₁ ^(p) e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ ^(−μ) ^(CZT) ^((E) ¹ ^()z) ¹ μ_(CZT)(E ₀)μ_(CZT)(E ₁). Similarly, we can define the double photon response matrix for tail pileup, R₂ ^(t0)(E,E₀, E₁) and R₂ ^(t1)(E, E₀, E₁). The total double photon response matrix can be expressed as, R ₂ ^(p)(E,E ₀ ,E ₁)=R ₂ ^(p)(E,E ₀ ,E ₁)+R ₂ ^(t0)(E,E ₀ ,E ₁)+R ₂ ^(t1)(E,E ₀ ,E ₁) The incident spectrum S_(in)(E) is then obtained by solving the following equation iteratively:

${S_{in}(E)} = \frac{\begin{matrix} {{S_{m}(E)} - {\int{\int{{\mathbb{d}E^{\prime}}{\mathbb{d}E^{''}}{R_{2}\left( {E,E^{\prime},E^{''}} \right)}{S_{in}\left( E^{\prime} \right)}S_{in}\left( E^{''} \right)}}} -} \\ {\sum\limits_{E^{\prime} = {E + 1}}^{E_{mas}}{{R\left( {E,E^{\prime}} \right)}{S_{in}\left( E^{\prime} \right)}}} \end{matrix}}{R\left( {E,E} \right)}$ Note that these two equations can be readily extended to include a multiple (more than two) photon response matrix representing higher-order pileup.

The above-described embodiments for determining a detector pileup model have many advantages of conventional pileup correction methods. For example, the disclosed embodiments accommodate a flexible dead time, to handle the varying real dead time in a photon-counting detector, as well as a flexible pulse shape. Further, the disclosed embodiments include individual detection probabilities for different numbers of quasi-coincident photons, instead of the constant detection probability used in conventional approaches.

The model equations set forth above are based on particular weighting potential and ballistic deficit equations. These example weighting potential and ballistic deficit equations are used to illustrate only one example in which the calculation of ν_(p)(t) has a closed form. Other equations can be used and the component spectra can be similarly calculated (the probability method still holds), but with a different ν_(p)(t) function that may no longer have a closed-form solution.

Also, note that the pulse shape is incorporated in the weighting potential and ballistic deficit equations. Thus, a different pulse shape will result in different equations.

Moreover, the disclosed embodiments model realistic pixel weighting potential, depth of interaction, ballistic deficit, and space charge. The disclosed embodiments illustrate one example of weighting potential and a ballistic deficit model. However, in alternative embodiments, other models of signal induction and detector response, which are determined by the detector configuration, can be incorporated into the present methods.

FIG. 6 illustrates the basic structure of a spectral CT scanner apparatus that includes the photon-counting detectors described herein. The CT apparatus of FIG. 6 includes an X-ray tube 1, filters and collimators 2, and third-generation detector 3. The CT apparatus also includes, e.g., sparse fixed energy-discriminating (e.g., photon-counting) detectors 8, which can be arranged at a different radius from that of the third-generation detector 3, as shown in FIG. 7. The CT apparatus will also include additional mechanical and electrical components, such as a gantry motor and a controller 4 to control the rotation of the gantry, control the X-ray tube 1, and control a patient bed. The CT apparatus also includes a data acquisition system 5 and a processor 6 to generate CT images based on the projection (view) data acquired by the data acquisition system. For example, the processor 6 included a reconstruction processor to reconstruct spectral CT images.

In particular, the processor 6 is programmed to perform methods for determining parameters of a detector pileup model and for performing pileup correction for each photon-counting detector, as described above. Further, the processor 6 and data acquisition system 5 make use of a memory 7, which is configured to store, e.g., computer programs, data obtained from the detector, the detector pileup models, and reconstructed images.

In one embodiment, the processor 6 is configured to set values of the plurality of parameters, the parameters including a dead time parameter and individual probabilities of different pileup events, the probabilities including a probability of single photon events, a probability of double quasi-coincident photon events, and a probability of at least three quasi-coincident photon events; determine, using (1) a detector response model, (2) an incident spectrum, and (3) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events; sum the plurality of component spectra to generate an output spectrum; calculate, based on the output spectrum and a measured spectrum, a value of a cost function; update at least one of the values of the parameter vector; and repeat the determining, summing, calculating, and updating steps until a stopping criteria is met, so as to determine a parameter vector that optimizes the cost function.

As one of ordinary skill in the art would recognize, the processor 6 can include a CPU that can be implemented as discrete logic gates, as an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Complex Programmable Logic Device (CPLD). An FPGA or CPLD implementation may be coded in VHDL, Verilog, or any other hardware description language and the code may be stored in an electronic memory directly within the FPGA or CPLD, or as a separate electronic memory. Further, the memory may be non-volatile, such as ROM, EPROM, EEPROM or FLASH memory. The memory can also be volatile, such as static or dynamic RAM, and a processor, such as a microcontroller or microprocessor, may be provided to manage the electronic memory as well as the interaction between the FPGA or CPLD and the memory.

Alternatively, the CPU in the reconstruction processor may execute a computer program including a set of computer-readable instructions that perform the functions described herein, the program being stored in any of the above-described non-transitory electronic memories and/or a hard disk drive, CD, DVD, FLASH drive or any other known storage media. Further, the computer-readable instructions may be provided as a utility application, background daemon, or component of an operating system, or combination thereof, executing in conjunction with a processor, such as a Xenon processor from Intel of America or an Opteron processor from AMD of America and an operating system, such as Microsoft VISTA, UNIX, Solaris, LINUX, Apple, MAC-OS and other operating systems known to those skilled in the art.

Once processed by the pre-reconstruction processor, the processed signals are passed to the reconstruction processor, which is configured to generate CT images. The images are stored in the memory, and/or displayed on a display. As one of ordinary skill in the art would recognize, memory can be a hard disk drive, CD-ROM drive, DVD drive, FLASH drive, RAM, ROM or any other electronic storage known in the art. The display can be implemented as an LCD display, CRT display, plasma display, OLED, LED or any other display known in the art. As such, the descriptions of the memory and the display provided herein are merely exemplary and in no way limit the scope of the present advancements.

While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed the novel methods and systems described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions, and changes in the form of the methods and systems described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions. 

The invention claimed is:
 1. A method for determining a parameter vector that includes a plurality of parameters of a detector pileup model of a photon-counting detector, the detector pileup model being used for pileup correction for a spectral computed-tomography scanner, the method comprising: setting values of the plurality of parameters, the plurality of parameters including a dead time parameter and individual probabilities of different pileup events, the individual probabilities including a probability of single photon events, a probability of double quasi-coincident photon events, and a probability of at least three quasi-coincident photon events; determining, using (1) a detector response model, (2) an incident spectrum, and (3) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events; summing the plurality of component spectra to generate an output spectrum; calculating, based on the output spectrum and a measured spectrum, a value of a cost function; updating at least one of the values of the parameter vector; and repeating the determining, summing, calculating, and updating steps until a stopping criteria is met, so as to determine a parameter vector that optimizes the cost function.
 2. The method of claim 1, wherein the setting step comprises setting the dead time parameter based on the scanner geometry.
 3. The method of claim 1, wherein the calculating step comprises: calculating the value of the cost function using: ψ²( a )=∫dE[S _(out)(E,a )−S _(m)(E)]² wherein ψ(a) is the cost function, a is the parameter vector, is the output spectrum, S_(m)(E) is the measured spectrum, and E is energy.
 4. The method of claim 1, wherein the plurality of parameters further include a time threshold to distinguish between peak pileup events and tail pileup events; and the determining step comprises determining, for the double quasi-coincident photon events, a peak pileup component spectrum and a tail pileup component spectrum.
 5. The method of claim 1, wherein the repeating step comprises repeating the determining, summing, calculating, and updating steps until the cost function falls below a predetermined threshold or for a predetermined number of iterations.
 6. The method of claim 1, wherein the updating step comprises updating the parameter vector a according to an exhaustive search method.
 7. The method of claim 1, wherein the updating step comprises updating the parameter vector a according to a nonlinear least-squares method.
 8. The method of claim 1, wherein the determining step comprises: determining, as one of the plurality of component spectra, a first component spectrum for single photon events, the first component spectrum being determined as: S ₀(E)=e ^(−nτ) ^(d) ∫∫dz ₀ dE ₀χ₀ S _(in)(E ₀)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ μ_(CZT)(E ₀) where S₀(E) is determined from the detected energy, E, which is defined as E=ν _(p)(t _(TOF) ⁰ :z ₀ ,E ₀), S_(in) is the incident spectrum, E₀ is the incident energy, z₀ is an interaction point, n is an incident count rate, μ_(CZT)(E) is a linear attenuation value, τ_(d) is the dead time parameter, ν_(p) is an output voltage of a pre-amplifier; and χ₀ is a probability of single photon events.
 9. A method of performing pileup correction for a spectral computed-tomography scanner, the scanner including a photon-counting detector, the method comprising: determining, using the method of claim 1, a parameter vector that includes a plurality of parameters of a detector pileup model of the photon-counting detector; performing a scan using the scanner to generate a measured spectrum for the photon-counting detector; and determining, using the detector pileup model and the measured spectrum, an incident spectrum for the photon-counting detector.
 10. A device for determining a parameter vector that includes a plurality of parameters of a detector pileup model of a photon-counting detector, the detector pileup model being used for pileup correction for a spectral computed-tomography scanner, the device comprising: a processor configured to set values of the plurality of parameters, the plurality of parameters including a dead time parameter and individual probabilities of different pileup events, the individual probabilities including a probability of single photon events, a probability of double quasi-coincident photon events, and a probability of at least three quasi-coincident photon events; determine, using (1) a detector response model, (2) an incident spectrum, and (3) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events; sum the plurality of component spectra to generate an output spectrum; calculate, based on the output spectrum and a measured spectrum, a value of a cost function; update at least one of the values of the parameter vector; and repeat the determining, summing, calculating, and updating steps until a stopping criteria is met, so as to determine a parameter vector that optimizes the cost function.
 11. The device of claim 10, wherein the processor is further configured to set the dead time parameter based on the scanner geometry.
 12. The device of claim 10, wherein the processor is further configured to calculate the value of the cost function using: ψ²( a )=∫dE[S _(out)(E,a )−S _(m)(E)]² wherein ψ(a) is the cost function, a is the parameter vector, S_(out)(E, a) is the output spectrum, S_(m)(E) is the measured spectrum, and E is energy.
 13. The device of claim 10, wherein the plurality of parameters further include a time threshold to distinguish between peak pileup events and tail pileup events; and the processor is further configured to determine, for the double quasi-coincident photon events, a peak pileup component spectrum and a tail pileup component spectrum.
 14. The device of claim 10, wherein the processor is further configured to repeat the determining, summing, calculating, and updating steps until the cost function falls below a predetermined threshold or for a predetermined number of iterations.
 15. The device of claim 10, wherein the processor is further configured to update the parameter vector a according to an exhaustive search method.
 16. The device of claim 10, wherein the processor is further configured to update the parameter vector a according to a nonlinear least-squares method.
 17. The device of claim 10, wherein the processor is further configured to determine, as one of the plurality of component spectra, a first component spectrum for single photon events, the first component spectrum being determined as: S ₀(E)=e ^(−nτ) ^(d) ∫∫dz ₀ dE ₀χ₀ S _(in)(E ₀)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ μ_(CZT)(E ₀) where S₀(E) is determined from the detected energy, E, which is defined as E=ν _(p)(t _(TOF) ⁰ :z ₀ ,E ₀), S_(in) is the incident spectrum, E₀ is the incident energy, z₀ is an interaction point, n is an incident count rate, μ_(CZT)(E) is a linear attenuation value, τ_(d) is the dead time parameter, ν_(p) is an output voltage of a pre-amplifier; and χ₀ is a probability of single photon events.
 18. An apparatus for performing pileup correction for a spectral computed-tomography scanner, the scanner including a photon-counting detector, the apparatus comprising: the device of claim 10, wherein the processor is further configured to cause the scanner to perform a scan to generate a measured spectrum for the photon-counting detector, and determine, using the detector pileup model and the measured spectrum, an incident spectrum for the photon-counting detector.
 19. A method for determining an output spectrum from a parameter vector that includes a plurality of parameters of a detector pileup model of a photon-counting detector, the detector pileup model being used for pileup correction for a spectral computed-tomography scanner, the method comprising: setting values of the plurality of parameters, the plurality of parameters including a dead time parameter and individual probabilities of different pileup events, the individual probabilities including a probability of single photon events and a probability of double quasi-coincident photon events; determining, using (1) a detector response model, (2) an incident spectrum, and (3) the set values of the parameter vector, a plurality of component spectra, each component spectrum corresponding to one of the individual probabilities of the different pileup events, wherein the determining step includes determining, as one of the plurality of component spectra, a first component spectrum for single photon events, the first component spectrum being determined as: S ₀(E)=e ^(−nτ) ^(d) ∫∫dz ₀ dE ₀χ₀ S _(in)(E ₀)e ^(−μ) ^(CZT) ^((E) ⁰ ^()z) ⁰ μ_(CZT)(E ₀) where S₀(E) is determined from the detected energy, E, which is defined as E=ν _(p)(t _(TOF) ⁰ :z ₀ ,E ₀), S_(in) is the incident spectrum, E₀ is the incident energy, z₀ is an interaction point, n is an incident count rate, μ_(CZT)(E) is a linear attenuation value, τ_(d) is the dead time parameter, ν_(p) is an output voltage of a pre-amplifier; and χ₀ is a probability of single photon events; and summing the plurality of component spectra to generate the output spectrum. 